The Primitive Proof Theory of the lambda-Calculus

نویسنده

  • René Vestergaard
چکیده

We consider formal provability with structural induction and related proof principles in the λ-calculus seen as a (functional) programming language, i.e., presented with first-order abstract syntax over one-sorted variable names. Structural induction is the principal primitive proof principle of that particular syntactic framework and it is, indeed, near-ubiquitously employed in informal proofs in the wider programming-language theory community. In spite of substantial efforts in the theorem-proving community, these informal proofs have unfortunately been neither formalised nor considered formalisable so far. This impasse must naturally raise uncomfortable questions about the formal validity of the proof principles. The highlights of the results we establish formally by structural means are the relative renaming freeness of β-residual theory, decidability of αequivalence, β-confluence, η-confluence, βη-confluence, β residual completion (aka strong weakly-finite β-development), residual β-confluence, η-overβ postponement, and notably β-standardisation. Interestingly, our uniform proof methodology, which has relevance beyond the λ-calculus, properly contains pen-and-paper proof practices in a precise sense except for the cases of α-decidability and β-standardisation where the known proofs fail in instructive ways. Our notion of residual completion, furthermore, presents a simplified treatment of residual theory compared to established practice, be it for strong finite development or for Huet’s Prism theorem/Lévy’s Cube lemma. Overall, our approach makes precise what is the full algebraic proof burden of the considered results and our proofs, in fact, appear to be the first complete developments in the literature. Our results are relevant for researchers in programming language theory, rewriting, proof theory, and mechanised theorem proving/automated reasoning.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Domain-theoretic models of parametric polymorphism

We present a domain-theoretic model of parametric polymorphism based on admissible per’s over a domain-theoretic model of the untyped lambda calculus. The model is shown to be a model of Abadi & Plotkin’s logic for parametricity, by the construction of an LAPL-structure as defined by the authors in [7, 5]. This construction gives formal proof of solutions to a large class of recursive domain eq...

متن کامل

Type Systems for Polynomial-time Computation Vom Fachbereich Mathematik Der Technischen Universitt at Darmstadt Angenommene Habilitationsschrift Von

This thesis introduces and studies a typed lambda calculus with higher-order primitive recursion over inductive datatypes which has the property that all de nable number-theoretic functions are polynomial time computable. This is achieved by imposing type-theoretic restrictions on the way results of recursive calls can be used. The main technical result is the proof of the characteristic proper...

متن کامل

Type Systems for Polynomial-time Computation

This thesis introduces and studies a typed lambda calculus with higher-order primitive recursion over inductive datatypes which have the property that all de nable number-theoretic functions are polynomial time computable. This is achieved by imposing type-theoretic restrictions on the way results of recursive calls can be used. The main technical result is the proof of the characteristic prope...

متن کامل

Complete Cut-Free Tableaux for Equational Simple Type Theory

Church’s type theory [11] is a basic formulation of higher-order logic. Henkin [13] found a natural class of models for which Church’s Hilbert-style proof system turned out to be complete. Equality, originally expressed with higher-order quantification, was later identified as the primary primitive of the theory [14, 3, 1]. In this paper we consider simple type theory with primitive equality bu...

متن کامل

Proof-Directed De-compilation of Low-Level Code

We present a proof theoretical method for de-compiling lowlevel code to the typed lambda calculus. We first define a proof system for a low-level code language based on the idea of Curry-Howard isomorphism. This allows us to regard an executable code as a proof in intuitionistic propositional logic. As being a proof of intuitionistic logic, it can be translated to an equivalent proof of natural...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003